In many situations it is desirable to be able to decode data stored in coded form on a product. One example of such data decoding is to determine the position on a surface provided with a coding pattern. Such position determination is useful, for instance, when using a reading pen on a writing surface.
Applicant's Patent Publication WO 01/26032, which is herewith incorporated by reference, describes a device for position determination and a product that has a surface that is provided with a coding pattern. The device is arranged to record an image of the surface, to locate a predetermined number of symbols in the image, to determine the value of each of the symbols and to determine its position on the surface based on these values.
There are many other types of coding patterns in the form of position codes, for example, those in which each position is coded by a complex symbol with a special appearance.
A problem in decoding the known types of coding patterns is that the values of the symbols cannot always be determined with full accuracy. When the coding pattern is printed on a surface, the limited resolution of printers may imply that the symbols are not printed completely exactly. The symbols can, for example, be printed somewhat deformed or somewhat displaced from their “nominal” location. If it is the shape or location of the symbol that determines its value, the deformation and the displacement, respectively, mean that it may be difficult to determine the value of the symbol unambiguously.
It sometimes also happens that a symbol is not printed at all.
Another problem may arise if the coding pattern is printed on a surface that has a structure of its own that can interfere with the location of symbols in the recorded image. Structures in the surface can then be perceived as symbols by a device for data decoding. It can also happen that there are impurities, for instance in the form of dust, on the surface on which the coding pattern is printed. These impurities may give rise to noise symbols in the recorded image. Such noise symbols may then by mistake be identified as symbols in the coding pattern. Also, sensor noise from a sensor for recording the image may cause noise symbols in the image. Noise symbols in the recorded image may also originate from a defect on one of the components in the device, for instance damaged pixels in the sensor. On account of the above reasons there is therefore a risk that data cannot be decoded from the coding pattern in a recorded image.